package com.zhilei.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;
import lombok.Data;

/**
 * 用户表
 */
@Data
@TableName(value = "users")
public class Users {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.INPUT)
    private String id;

    /**
     * 手机号
     */
    @TableField(value = "mobile")
    private String mobile;

    /**
     * 昵称
     */
    @TableField(value = "nickname")
    private String nickname;

    /**
     * 真实姓名
     */
    @TableField(value = "real_name")
    private String realName;

    /**
     * 对外展示名，1：真实姓名，2：昵称
     */
    @TableField(value = "show_which_name")
    private Integer showWhichName;

    /**
     * 性别，1:男 0:女 2:保密
     */
    @TableField(value = "sex")
    private Integer sex;

    /**
     * 用户头像
     */
    @TableField(value = "face")
    private String face;

    /**
     * 邮箱
     */
    @TableField(value = "email")
    private String email;

    /**
     * 生日
     */
    @TableField(value = "birthday")
    private LocalDate birthday;

    /**
     * 国家
     */
    @TableField(value = "country")
    private String country;

    /**
     * 省份
     */
    @TableField(value = "province")
    private String province;

    /**
     * 城市
     */
    @TableField(value = "city")
    private String city;

    /**
     * 区县
     */
    @TableField(value = "district")
    private String district;

    /**
     * 介绍
     */
    @TableField(value = "description")
    private String description;

    /**
     * 我参加工作的时间
     */
    @TableField(value = "start_work_date")
    private LocalDate startWorkDate;

    /**
     * 我当前职位/职务
     */
    @TableField(value = "`position`")
    private String position;

    /**
     * 身份角色，1: 求职者，2: 求职者可以切换为HR进行招聘，同时拥有两个身份
     */
    @TableField(value = "`role`")
    private Integer role;

    /**
     * 成为HR后，认证的（绑定的）公司主键id
     */
    @TableField(value = "hr_in_which_company_id")
    private String hrInWhichCompanyId;

    /**
     * 我的一句话签名
     */
    @TableField(value = "hr_signature")
    private String hrSignature;

    /**
     * 我的个性化标签
     */
    @TableField(value = "hr_tags")
    private String hrTags;

    /**
     * 创建时间
     */
    @TableField(value = "created_time")
    private LocalDateTime createdTime;

    /**
     * 更新时间
     */
    @TableField(value = "updated_time")
    private LocalDateTime updatedTime;

    /**
     * 用户当前登录的状态;0：正常；1：冻结；2：删除
     */
    @TableField(value = "`status`")
    private Integer status;

    /**
     * 部门表ID
     */
    @TableField(value = "sys_dept_id")
    private String sysDeptId;

    /**
     * 逻辑删除标志（0: 未删除，1: 已删除）
     */
    @TableField(value = "deleted")
    private Byte deleted;

    /**
     * 创建人
     */
    @TableField(value = "created_user")
    private String createdUser;

    /**
     * 更新人
     */
    @TableField(value = "updated_user")
    private String updatedUser;
}
